/********************************************************************************
    Author :
********************************************************************************/

/********************************************************************************
    Include Files :
********************************************************************************/
#include "Std_Type.h"
/********************************************************************************
    Defination :
********************************************************************************/
#define IOHWAB_CODE
/********************************************************************************
    Comment : The defination of level range
********************************************************************************/
#define MAX_LEVEL (uint8)0x05
#define MIN_LEVEL (uint8)0x00
/********************************************************************************
    Type name :
********************************************************************************/

/********************************************************************************
    Comment : The brightness level of light
********************************************************************************/
typedef enum
{
	ENU_GEAR_OFF  = (uint8)0x00,
	ENU_GEAR_1    = (uint8)0x01,
	ENU_GEAR_2    = (uint8)0x02,
	ENU_GEAR_3    = (uint8)0x03,
	ENU_GEAR_4    = (uint8)0x04,
	ENU_GEAR_ON   = (uint8)0x05,
}enuLightLevel;

/********************************************************************************
    Comment : The lights which are controlled by PWM
********************************************************************************/
typedef enum
{
	ENU_RED_LIGHT 		= (uint8)0x00,
	ENU_GREEN_LIGHT		= (uint8)0x01,
	ENU_YELLOW_LOCK 	= (uint8)0x02
}enuLight;

/********************************************************************************
    Comment : The lights which are controlled by PORT
********************************************************************************/
typedef enum
{
	ENU_WRITE_SELECT_LIGHT 	= (uint8)0x00
}enuWriteLight;

/********************************************************************************
    Public variables :
********************************************************************************/

/********************************************************************************
    Public function :
********************************************************************************/
PUBLIC FUNC(void,IOHWAB_CODE) IoHwAb_vidUpdateBrightness(enuLightLevel enuGear,enuLight enuChannel);
PUBLIC FUNC(void,IOHWAB_CODE) IoHwAb_vidPullUpPin(enuWriteLight enuPinType);
PUBLIC FUNC(void,IOHWAB_CODE) IoHwAb_vidPullDownPin(enuWriteLight enuPinType);

PUBLIC FUNC(enuLightLevel,IOHWAB_CODE) IoHwAb_enuGetRedAdcValue(void);
PUBLIC FUNC(enuLightLevel,IOHWAB_CODE) IoHwAb_enuGetGreenAdcValue(void);
